-
ng
- function
- angular.UNSAFE_restoreLegacyJqLiteXHTMLReplacement
- angular.bind
- angular.bootstrap
- angular.copy
- angular.element
- angular.equals
- angular.errorHandlingConfig
- angular.extend
- angular.forEach
- angular.fromJson
- angular.identity
- angular.injector
- angular.isArray
- angular.isDate
- angular.isDefined
- angular.isElement
- angular.isFunction
- angular.isNumber
- angular.isObject
- angular.isString
- angular.isUndefined
- angular.merge
- angular.module
- angular.noop
- angular.reloadWithDebugInfo
- angular.toJson
- directive
- a
- form
- input
- input[checkbox]
- input[date]
- input[datetime-local]
- input[email]
- input[month]
- input[number]
- input[radio]
- input[range]
- input[text]
- input[time]
- input[url]
- input[week]
- ngApp
- ngBind
- ngBindHtml
- ngBindTemplate
- ngBlur
- ngChange
- ngChecked
- ngClass
- ngClassEven
- ngClassOdd
- ngClick
- ngCloak
- ngController
- ngCopy
- ngCsp
- ngCut
- ngDblclick
- ngDisabled
- ngFocus
- ngForm
- ngHide
- ngHref
- ngIf
- ngInclude
- ngInit
- ngJq
- ngKeydown
- ngKeypress
- ngKeyup
- ngList
- ngMaxlength
- ngMinlength
- ngModel
- ngModelOptions
- ngMousedown
- ngMouseenter
- ngMouseleave
- ngMousemove
- ngMouseover
- ngMouseup
- ngNonBindable
- ngOn
- ngOpen
- ngOptions
- ngPaste
- ngPattern
- ngPluralize
- ngProp
- ngReadonly
- ngRef
- ngRepeat
- ngRequired
- ngSelected
- ngShow
- ngSrc
- ngSrcset
- ngStyle
- ngSubmit
- ngSwitch
- ngTransclude
- ngValue
- script
- select
- textarea
- object
- angular.version
- type
- $cacheFactory.Cache
- $compile.directive.Attributes
- $rootScope.Scope
- ModelOptions
- angular.Module
- form.FormController
- ngModel.NgModelController
- select.SelectController
- provider
- $anchorScrollProvider
- $animateProvider
- $compileProvider
- $controllerProvider
- $filterProvider
- $httpProvider
- $interpolateProvider
- $locationProvider
- $logProvider
- $parseProvider
- $qProvider
- $rootScopeProvider
- $sceDelegateProvider
- $sceProvider
- $templateRequestProvider
- service
- $anchorScroll
- $animate
- $animateCss
- $cacheFactory
- $compile
- $controller
- $document
- $exceptionHandler
- $filter
- $http
- $httpBackend
- $httpParamSerializer
- $httpParamSerializerJQLike
- $interpolate
- $interval
- $jsonpCallbacks
- $locale
- $location
- $log
- $parse
- $q
- $rootElement
- $rootScope
- $sce
- $sceDelegate
- $templateCache
- $templateRequest
- $timeout
- $window
- $xhrFactory
- filter
- currency
- date
- filter
- json
- limitTo
- lowercase
- number
- orderBy
- uppercase
- auto
- ngAnimate
- ngAria
- ngComponentRouter
- ngCookies
-
ngMessageFormat
- ngMessages
-
ngMock
- object
- angular.mock
- service
- $animate
- $componentController
- $controller
- $exceptionHandler
- $flushPendingTasks
- $httpBackend
- $interval
- $log
- $timeout
- $verifyNoPendingTasks
- provider
- $exceptionHandlerProvider
- type
- $rootScope.Scope
- angular.mock.TzDate
- function
- angular.mock.dump
- angular.mock.inject
- angular.mock.module
- angular.mock.module.sharedInjector
- browserTrigger
- ngMockE2E
-
ngParseExt
- ngResource
- ngRoute
- ngSanitize
- ngTouch
input[url]
- - input in module ng
Overview
Text input with URL validation. Sets the url
validation error key if the content is not a
valid URL.
input[url]
uses a regex to validate urls that is derived from the regex
used in Chromium. If you need stricter validation, you can use ng-pattern
or modify
the built-in validators (see the Forms guide)
Directive Info
- This directive executes at priority level 0.
Usage
<input type="url"
ng-model="string"
[name="string"]
[required="string"]
[ng-required="string"]
[ng-minlength="number"]
[ng-maxlength="number"]
[pattern="string"]
[ng-pattern="string"]
[ng-change="string"]>
Arguments
Param | Type | Details |
---|---|---|
ngModel | string |
Assignable AngularJS expression to data-bind to. |
name
(optional)
|
string |
Property name of the form under which the control is published. |
required
(optional)
|
string |
Sets |
ngRequired
(optional)
|
string |
Adds |
ngMinlength
(optional)
|
number |
Sets |
ngMaxlength
(optional)
|
number |
Sets |
pattern
(optional)
|
string |
Similar to |
ngPattern
(optional)
|
string |
Sets |
ngChange
(optional)
|
string |
AngularJS expression to be executed when input changes due to user interaction with the input element. |
Example
<script>
angular.module('urlExample', [])
.controller('ExampleController', ['$scope', function($scope) {
$scope.url = {
text: 'http://google.com'
};
}]);
</script>
<form name="myForm" ng-controller="ExampleController">
<label>URL:
<input type="url" name="input" ng-model="url.text" required>
<label>
<div role="alert">
<span class="error" ng-show="myForm.input.$error.required">
Required!</span>
<span class="error" ng-show="myForm.input.$error.url">
Not valid url!</span>
</div>
<tt>text = {{url.text}}</tt><br/>
<tt>myForm.input.$valid = {{myForm.input.$valid}}</tt><br/>
<tt>myForm.input.$error = {{myForm.input.$error}}</tt><br/>
<tt>myForm.$valid = {{myForm.$valid}}</tt><br/>
<tt>myForm.$error.required = {{!!myForm.$error.required}}</tt><br/>
<tt>myForm.$error.url = {{!!myForm.$error.url}}</tt><br/>
</form>
var text = element(by.binding('url.text'));
var valid = element(by.binding('myForm.input.$valid'));
var input = element(by.model('url.text'));
it('should initialize to model', function() {
expect(text.getText()).toContain('http://google.com');
expect(valid.getText()).toContain('true');
});
it('should be invalid if empty', function() {
input.clear();
input.sendKeys('');
expect(text.getText()).toEqual('text =');
expect(valid.getText()).toContain('false');
});
it('should be invalid if not url', function() {
input.clear();
input.sendKeys('box');
expect(valid.getText()).toContain('false');
});